DEFINITION MODULE Loader;

(* (C) Copyright 1987,1988 Fitted Software Tools. All rights reserved. *)


PROCEDURE Execute( pgm :ARRAY OF CHAR; args :ARRAY OF CHAR;
                   VAR exitcode :CARDINAL );
(*
    invokes pgm (full path name, please) passing along args.
    On return:
        exitcode < 32768:  Execute failed, exitcode is DOS error.
        exitcode >= 32768: exitcode MOD 256 is pgm exit code.
                           (exitcode-32768) DIV 256 is reason for
                            termination (see DOS technical reference):
                            0 = normal
                            1 = by Control-C
                            2 = critical device error
                            3 = DOS function 31H (keep process)

    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    Execute tries to shrink the calling program's memory by
    freeing up all memory above System.HeapTop.
                                ^^^^^^^^^^^^^^
    The called program MUST NOT terminate and stay resident!
*)

END Loader.